
import numpy as np

# numpy.empty 方法用来创建一个指定形状（shape）、数据类型（dtype）且未初始化的数组
def fun1():
    x = np.empty([3, 2], dtype=int)
    print(x)

# numpy.zeros 方法用来创建置顶大小的数组，数组元素以0来填充
def fun2():
    # 默认为浮点数
    x = np.zeros(5)
    print(x)

    # 设置类型为整数
    y = np.zeros((5, ), dtype=int)
    print(y)

    # 自定义类型
    z = np.zeros((2, 2), dtype=[('x', 'i4'), ('y', 'i4')])
    print(z)

# numpy.ones 创建指定形状的数组，数组元素以1来填充
def fun3():
    # 默认为浮点数
    x = np.ones(5)
    print(x)

    # 自定义类型
    x = np.ones([2, 3], dtype=int)
    print(x)

# numpy.zeros_like 创建一个与给定数组具有相同形状的数组，数组元素以0来填充
def fun4():
    # 创建一个3x3的二维数组
    arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

    # 创建一个与arr形状相同的，所有元素都为0的数组
    zeros_arr = np.zeros_like(arr)
    print(zeros_arr)

# numpy.ones_like 创建一个与给定数组具有相同形状的数组，数组元素以1来填充
def fun5():
    # 创建一个3x3的二维数组
    arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

    # 创建一个与arr形状相同的，所有元素都为1的数组
    ones_arr = np.ones_like(arr)
    print(ones_arr)

if __name__ == '__main__':
    fun5()